﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Windows;

namespace BasicComponents.Model
{
    public class ListBoxItemResourses : INotifyPropertyChanged,ICloneable
    {
        String dm = "";
        String mc = "";
        String dmmc = "";
        Boolean isSelected = false;
        Visibility isVisibility = Visibility.Visible;

        public event PropertyChangedEventHandler PropertyChanged;

        public string Dm
        {
            get
            {
                return dm;
            }

            set
            {
                dm = value; if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs("Dm"));
                }
            }
        }

        public string Mc
        {
            get
            {
                return mc;
            }

            set
            {
                mc = value; if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs("Mc"));
                }
            }
        }

        public string Dmmc
        {
            get
            {
                return dmmc;
            }

            set
            {
                dmmc = value; if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs("Dmmc"));
                }
            }
        }

        public bool IsSelected
        {
            get
            {
                return isSelected;
            }

            set
            {
                isSelected = value;
                if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs("IsSelected"));
                }
            }
        }

        public Visibility IsVisibility
        {
            get
            {
                return isVisibility;
            }

            set
            {
                isVisibility = value;
                if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs("IsVisibility"));
                }
            }
        }

        public object Clone()
        {
            return this.MemberwiseClone();
        }
    }
}
